/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.tbp.controle;

import br.com.tbp.exception.PersistenciaException;
import br.com.tbp.model.domain.financeiro.Conta;
import br.com.tbp.persitence.FabricaDePersistencia;
import br.com.tbp.persitence.dao.ContaDao;
import java.util.Date;
import java.util.List;

/**
 *
 * @author lubni
 */
public class ControleConta {

    public void adicionar(Conta c) throws PersistenciaException {
        ContaDao dao = FabricaDePersistencia.createContaDao();
        dao.adicionar(c);
    }

    public void editar(Conta c) throws PersistenciaException {
        ContaDao dao = FabricaDePersistencia.createContaDao();
        dao.editar(c);
    }

    public List<Conta> pesquisar(int mes, int ano) throws PersistenciaException {
        ContaDao dao = FabricaDePersistencia.createContaDao();
        return dao.pesquisar(mes, ano);
    }

    public boolean excluir(Conta c) throws PersistenciaException {
        ContaDao dao = FabricaDePersistencia.createContaDao();
        return dao.excluir(c);
    }

    public List<Conta> pesquisarPor(String descricao, int mes, int ano) throws PersistenciaException {
        ContaDao dao = FabricaDePersistencia.createContaDao();
        return dao.pesquisarPor(descricao, mes, ano);
    }

    public List<Conta> pesquisarPor(Date data) throws PersistenciaException {
        ContaDao dao = FabricaDePersistencia.createContaDao();
        return dao.pesquisarPor(data);
    }

    public List<Conta> pesquisarPor(Double valor, int mes, int ano) throws PersistenciaException {
        ContaDao dao = FabricaDePersistencia.createContaDao();
        return dao.pesquisarPor(valor, mes, ano);
    }
}
